﻿using System;
using SharpSqlAnalyzer.nodes;
using SharpSqlAnalyzer.nodes.hive;

namespace SharpSqlAnalyzer.stmt.hive
{
	// Token: 0x020001BD RID: 445
	public class THiveExportTable : TCustomSqlStatement
	{
		// Token: 0x170002B3 RID: 691
		// (get) Token: 0x06000ED0 RID: 3792 RVA: 0x0030A8B6 File Offset: 0x00308AB6
		// (set) Token: 0x06000ED1 RID: 3793 RVA: 0x0030A8BE File Offset: 0x00308ABE
		public virtual TObjectName Path
		{
			get
			{
				return this.path;
			}
			set
			{
				this.path = value;
			}
		}

		// Token: 0x170002B4 RID: 692
		// (get) Token: 0x06000ED2 RID: 3794 RVA: 0x0030A8C7 File Offset: 0x00308AC7
		// (set) Token: 0x06000ED3 RID: 3795 RVA: 0x0030A8CF File Offset: 0x00308ACF
		public virtual TTable Table
		{
			get
			{
				return this.table;
			}
			set
			{
				this.table = value;
			}
		}

		// Token: 0x06000ED4 RID: 3796 RVA: 0x0030A8D8 File Offset: 0x00308AD8
		public THiveExportTable(EDbVendor dbvendor) : base(dbvendor)
		{
			this.sqlstatementtype = ESqlStatementType.ssthiveExportTable;
		}

		// Token: 0x06000ED5 RID: 3797 RVA: 0x0030A8EC File Offset: 0x00308AEC
		public override int doParseStatement(TCustomSqlStatement psql)
		{
			if (this.rootNode == null)
			{
				return -1;
			}
			base.doParseStatement(psql);
			THiveExportSqlNode thiveExportSqlNode = (THiveExportSqlNode)this.rootNode;
			this.path = thiveExportSqlNode.Path;
			this.table = this.analyzeFromTable(thiveExportSqlNode.FromTable, new bool?(true));
			return 0;
		}

		// Token: 0x06000ED6 RID: 3798 RVA: 0x0030A93C File Offset: 0x00308B3C
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x06000ED7 RID: 3799 RVA: 0x0030A94C File Offset: 0x00308B4C
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x04001345 RID: 4933
		private TObjectName path;

		// Token: 0x04001346 RID: 4934
		private TTable table;
	}
}
